#include "widget.h"
#include "ui_widget.h"
#include "QDebug"
#include "QFileDialog"//打开对应路径文件框文件
#include "QTextCodec"//编码模式转换头文件
#include "QDateTime"
Widget::Widget(QWidget *parent)
    : QWidget(parent)
    , ui(new Ui::Widget)
{
    ui->setupUi(this);

    connect(ui->Btn1,&QPushButton::clicked,this,[=](){
        QTextCodec *code=QTextCodec::codecForName("gbk");
        //不用对象调用函数，编译也不知道是谁，所以要声明头文件  应该也是阻塞页面
        QString path=QFileDialog::getOpenFileName(this,"打开文件","D:/桌面");
        //将返回的路径显示到文本条中
        ui->lineEdit->setText(path);
        //对应文件信息对象
        QFile file(path);
        //打开方式打开一个文件进行操作
        file.open(QIODevice::ReadOnly);
        //读取数据放到array类型中
        QByteArray array;
        while(!file.atEnd()){
            //按行添加
            array+=file.readLine();
        }
        //setText函数参数是信息类型
        ui->textEdit->setText(array);//转换编码模式
        //关闭文件
           file.close();

        //QByteArray array=file.readAll();
        //setText函数参数是信息类型
        //ui->textEdit->setText(code->toUnicode(array));//转换编码模式

        //追加方式打开文件
           file.open(QIODevice::Append);
           file.write("aaaaaaaa");
           file.close();

           //文件信息读写，通过QFileInfo类
           QFileInfo info(path);
           qDebug()<<"大小"<<info.size()<<"后缀名"<<info.suffix()<<"文件名称"<<info.fileName()<<"文件路径"<<info.filePath();
           qDebug()<<"创建日期"<<info.birthTime();
           qDebug()<<"创建日期"<<info.birthTime().toString("yyyy/MM/dd hh:mm:ss");
           //可以通过toString输出想要的信息
           qDebug()<<"创建日期"<<info.created().toString("yyyy/MM/dd hh:mm:ss");
           qDebug()<<"最后修改日期"<<info.lastModified().toString("yyyy/MM/dd hh:mm:ss");
    });
}

Widget::~Widget()
{
    delete ui;
}

